﻿using System;
using System.Collections.Generic;
using System.Text;

namespace DDDProjectSample.Domain
{
    public class Member : Entity
    {
        private String _firstName;
        private String _lastName;
        private String _login;
        private String _password;
        private String _email;

        /// <summary>
        /// Creates a new instance of class Member
        /// </summary>
        protected Member()
        {
        }

        /// <summary>
        /// Creates a new instance of class Member
        /// </summary>
        /// <param name="firstName">First name of the user</param>
        /// <param name="lastName">Last name of the user</param>
        /// <param name="login">Login of the user</param>
        /// <param name="password">Password of the user</param>
        /// <param name="email">Email adress of the user</param>
        public Member(
            String firstName,
            String lastName,
            String login,
            String password,
            String email)
        {
            _firstName = firstName;
            _lastName = lastName;
            _login = login;
            _password = password;
            _email = email;
        }

        /// <summary>
        /// Gets the user's first name
        /// </summary>
        public virtual String FirstName
        {
            get { return _firstName; }
        }

        /// <summary>
        /// Gets the user's last name
        /// </summary>
        public virtual String LastName
        {
            get { return _lastName; }
        }

        /// <summary>
        /// Gets the user's login
        /// </summary>
        public virtual String Login
        {
            get { return _login; }
        }

        /// <summary>
        /// Gets the user's password
        /// </summary>
        public virtual String Password
        {
            get { return _password; }
        }

        /// <summary>
        /// Gets the user's email address
        /// </summary>
        public virtual String Email
        {
            get { return _email; }
        }
    }
}
